home *** CD-ROM | disk | FTP | other *** search
/ Aminet 4 / Aminet 4 - November 1994.iso / aminet / comm / net / amipop112.lha / AmiPOP112 / source / pop.h < prev    next >
C/C++ Source or Header  |  1994-09-22  |  7KB  |  235 lines

  1.  
  2.  
  3. #define INTUI_V36_NAMES_ONLY
  4.  
  5. #ifdef AMITCP
  6.     #define PROTO_TIMER_H
  7.     #define CLIB_SOCKET_INLINES_H
  8. #endif
  9.  
  10. #include <proto/dos.h>
  11. #include <proto/intuition.h>
  12. #include <proto/gadtools.h>
  13. #include <proto/timer.h>
  14. #include <proto/commodities.h>
  15. #include <proto/exec.h>
  16. #include <proto/timer.h>
  17. #include <proto/icon.h>
  18. #include <exec/types.h>
  19. #include <exec/ports.h>
  20. #include <exec/libraries.h>
  21. #include <exec/execbase.h>
  22. #include <exec/memory.h>
  23. #include <exec/ports.h>
  24. #include <libraries/gadtools.h>
  25. #include <libraries/commodities.h>
  26. #include <dos/dos.h>
  27. #include <dos/dosextens.h>
  28. #include <intuition/intuition.h>
  29. #include <intuition/classes.h>
  30. #include <intuition/classusr.h>
  31. #include <intuition/imageclass.h>
  32. #include <intuition/gadgetclass.h>
  33. #include <intuition/sghooks.h>
  34. #include <graphics/displayinfo.h>
  35. #include <graphics/gfxbase.h>
  36. #include <workbench/startup.h>
  37. #include <devices/timer.h>
  38. #include <sys/types.h>
  39. #include <sys/socket.h>
  40. #include <sys/param.h>
  41. #include <stdio.h>
  42. #include <stdlib.h>
  43. #include <string.h>
  44. #include <errno.h>
  45. #include <netdb.h>
  46. #include <fcntl.h>
  47. /*#include <time.h> */
  48.  
  49. #ifdef AMITCP
  50.     #define SOCKLIBNAME "bsdsocket.library"
  51.     #define SOCKLIBVERSION (2L)
  52.     #include <bsdsocket.h>
  53.     #include <sys/ioctl.h>
  54.     #include <sys/time.h>
  55.     #include <signal.h>
  56.     #define selectwait WaitSelect
  57.     #undef select
  58.     #define select(a, b, c, d, e) selectwait(a, b, c, d, e, NULL)
  59.     #define s_close CloseSocket
  60.     #define s_ioctl IoctlSocket
  61.     #undef inet_ntoa
  62.     #define inet_ntoa Inet_NtoA
  63.     #undef inet_netof
  64.     #define inet_netof Inet_NetOf
  65.     #undef inet_lnaof
  66.     #define inet_lnaof Inet_LnaOf
  67.     #define accept(a, b, c) accept(a, b, (LONG *)c)
  68.     #define s_release(a) (void *)ReleaseSocket(a, -1)
  69.     #define s_inherit(a) ObtainSocket((LONG)a, AF_INET, SOCK_STREAM, 0)
  70.     #define SocketBase SockBase
  71.     extern int errno;
  72. #else
  73.     #include <ss/socket.h>
  74.     #define SOCKLIBNAME "inet:libs/socket.library"
  75.     #define SOCKLIBVERSION 4L
  76. #endif
  77.  
  78. #include "asyncio.h"
  79.  
  80. #define MAXSOCKS 10
  81.  
  82. #define GetString( g )      ((( struct StringInfo * )g->SpecialInfo )->Buffer  )
  83. #define GetNumber( g )      ((( struct StringInfo * )g->SpecialInfo )->LongInt )
  84.  
  85. #define GD_MYGAD_USER                          0
  86. #define GD_MYGAD_PASSWORD                      1
  87. #define GD_MYGAD_DELETE                        2
  88. #define GD_MYGAD_MAILDIR                       3
  89. #define GD_MYGAD_BUTTON                        4
  90. #define GD_MYGAD_HOST                          5
  91. #define GD_MYGAD_TIME                          6
  92. #define GD_MYGAD_CRONCHECK                     7
  93. #define GD_MYGAD_APPEND                        8
  94.  
  95. #define GDX_MYGAD_USER                         0
  96. #define GDX_MYGAD_PASSWORD                     1
  97. #define GDX_MYGAD_DELETE                       2
  98. #define GDX_MYGAD_MAILDIR                      3
  99. #define GDX_MYGAD_BUTTON                       4
  100. #define GDX_MYGAD_HOST                         5
  101. #define GDX_MYGAD_TIME                         6
  102. #define GDX_MYGAD_CRONCHECK                    7
  103. #define GDX_MYGAD_APPEND                       8
  104.  
  105. #define Project0_CNT 9
  106.  
  107. extern struct IntuitionBase *IntuitionBase;
  108. extern struct Library       *GadToolsBase;
  109.  
  110. extern struct Screen        *Scr;
  111. extern UBYTE                *PubScreenName;
  112. extern APTR                  VisualInfo;
  113. extern struct Window        *Project0Wnd;
  114. extern struct Gadget        *Project0GList;
  115. extern struct Menu          *Project0Menus;
  116. extern struct IntuiMessage   Project0Msg;
  117. extern struct Gadget        *Project0Gadgets[9];
  118. extern UWORD                 Project0Left;
  119. extern UWORD                 Project0Top;
  120. extern UWORD                 Project0Width;
  121. extern UWORD                 Project0Height;
  122. extern UBYTE                *Project0Wdt;
  123. extern struct TextAttr      *Font, Attr;
  124. extern UWORD                 FontX, FontY;
  125. extern UWORD                 OffX, OffY;
  126. extern struct NewMenu        Project0NewMenu[];
  127. extern UWORD                 Project0GTypes[];
  128. extern struct NewGadget      Project0NGad[];
  129. extern ULONG                 Project0GTags[];
  130.  
  131. extern int MYGAD_USERClicked( void );
  132. extern int MYGAD_PASSWORDClicked( void );
  133. extern int MYGAD_DELETEClicked( void );
  134. extern int MYGAD_MAILDIRClicked( void );
  135. extern int MYGAD_BUTTONClicked( void );
  136. extern int MYGAD_HOSTClicked( void );
  137. extern int MYGAD_TIMEClicked( void );
  138. extern int MYGAD_CRONCHECKClicked( void );
  139. extern int MYGAD_APPENDClicked( void );
  140. extern int Project0MENU_HIDE( void );
  141. extern int Project0MENU_ABOUT( void );
  142. extern int Project0MENU_QUIT( void );
  143.  
  144. extern int SetupScreen( void );
  145. extern void CloseDownScreen( void );
  146. extern void Project0Render( void );
  147. extern int HandleProject0IDCMP( void );
  148. extern int Project0CloseWindow( void );
  149. extern int Project0VanillaKey( void );
  150. extern int Project0ChangeWindow( void );
  151. extern int OpenProject0Window( void );
  152. extern void CloseProject0Window( void );
  153.  
  154. /* My Protos */
  155.  
  156. extern int main( int, char **);
  157. extern void openup( void );
  158. extern void closedown( void );
  159. extern BOOL parse( int );
  160. void FreeParameters( LONG * );
  161. extern BOOL makevars( void );
  162. extern void freevars( void );
  163.  
  164. extern int setupcx( void );
  165. extern void closecx( void );
  166. extern int docx( void );
  167.  
  168. extern int dopop( void );
  169. extern int sendgreet( int );
  170. extern int senduser( int );
  171. extern int sendquit( int );
  172. extern int sendstat( int );
  173. extern int retrieve ( int , int );
  174. extern int lastblock (char * );
  175. extern char * strip( char * );
  176. extern int delmessage( int , int );
  177. extern int doreq( const char * , const char * );
  178. extern int valcheck( int, char * );
  179. extern int trans( int , char *);
  180. extern void settitle( char * );
  181.  
  182. extern int setuptime( void );
  183. extern int closetime(void );
  184. extern void timereq( void );
  185.  
  186. extern __stdargs void DoFmt (char *buf, const char *fmt, ...); /* sprintf() replacement */
  187.  
  188.  
  189. /* Variables */
  190.  
  191. #define EVT_HOTKEY 1L
  192. #define PASSCHAR '·'
  193. #define SMALLSTRING 64
  194. #define BIGSTRING 255
  195. #define BUFSIZE 257
  196.  
  197. extern char *pophost;
  198. extern char *username;
  199. extern char *password;
  200. extern char *passfake;
  201. extern char *maildir;
  202. extern char *cxname;
  203. extern char *cxdesc;
  204. extern char *hotkey;
  205. extern char *title;
  206. extern char *temp;
  207. extern char *buf;
  208.  
  209. extern char bum[];
  210.  
  211. extern BOOL delmail;
  212. extern BOOL checkper;
  213. extern BOOL appfile;
  214. extern BOOL winop;
  215. extern BOOL notify;
  216.  
  217. extern int timecheck;
  218. extern int port;
  219.  
  220. extern ULONG cxsigflag;
  221. extern ULONG sigmask;
  222. extern ULONG timesigflag;
  223.  
  224. extern struct MsgPort *amipop_mp;
  225. extern struct MsgPort *timer_mp;
  226. extern struct WBStartup *_WBenchMsg;
  227. extern struct timerequest *timerio;
  228. extern CxObj *broker;
  229. extern struct NewBroker newbroker;
  230. extern struct Library *TimerBase;
  231. extern struct IntuitionBase *IntuitionBase;
  232. extern struct Library *GadToolsBase;
  233.  
  234. extern UWORD __chip waitPointer[];
  235.